<?php
class Pagina extends AppModel {

    public $useTable = "paginas";
    public $validate = array(
        "titulo" => array(
            "rule" => "notEmpty",
            "required" => true,
            "message" => "Campo obrigatório."
        )
    );

    public function abrir($paginaID) {
        // carrega um objeto
        $this->read(null, $paginaID);

        // exceção em caso de não encontrar
        if ($this->field("id") != $paginaID)
            throw new Exception("Objeto não encontrado.");
    }

    public function adicionar() {
        // prepara as informações
        $data = $this->data;

        // prepara o objeto para inserção
        $this->create();

        // salva o objeto
        $result = $this->save($data);

        // retorna erro em caso de falha
        if (!$result)
            throw new Exception("Não foi possível adicionar o objeto.");
    }

    public function editar() {
        // salva o objeto
        $result = $this->save();

        // retorna erro em caso de falha
        if (!$result)
            throw new Exception("Não foi posível atualizar o objeto.");
    }

    public function remover() {
        // remove o objeto
        $result = $this->delete($this->field("id"));

        // retorna erro em caso de falha
        if (!$result)
            throw new Exception("Não foi possível remover o objeto.");
    }

}
?>
